package com.zs.zcerp.salary.service;

import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zs.zcerp.salary.entity.DeptDto;
import com.zs.zcerp.salary.entity.EsDailySalary;

import java.util.Date;
import java.util.List;

/**
 * (TgPpsM)表服务接口
 *
 * @author makejava
 * @since 2021-04-15 08:12:21
 */
public interface IEsDailySalaryService extends IService<EsDailySalary> {

    /**
     * 查找组织及下面的部门
     * @return
     */
    List<DeptDto> deptLists(Integer orgId);

    /**
     * 查找组织及下面的部门 (不处理返回deptId)
     * @return
     */
    List<DeptDto> deptList(Integer orgId);

    /**
     * 查找表中所有组织
     * @return
     */
    List<DeptDto> orgList();

    /**
     * 查询所有数据
     * @return
     */
    List<EsDailySalary> deptSalaryListLatest();

    /**
     * 查询选中的部门数据
     * @param deptIds id= orgId + deptNo
     * @return
     */
    List<EsDailySalary> deptSalaryListLatestSelected(JSONArray deptIds);

    /**
     * 查询选中的部门数据(查询日件资发布表)
     * @param deptIds id= orgId + deptNo
     * @return
     */
    List<EsDailySalary> deptSalaryListSelected(JSONArray deptIds);

    /**
     * 查询选中的部门数据(查询日件资发布表)
     * @param depts (deptNos)
     * @return
     */
    List<EsDailySalary> deptSalaryList(Integer orgId, JSONArray depts);

    /**
     * 查询预定分组的部门数据
     * @param groupId
     * @return
     */
    List<EsDailySalary> deptGroupSalaryList(Integer groupId);

    /**
     * 根据工号查询件资
     * @param empNo 员工工号
     * @return
     */
    List<EsDailySalary> findByEmpNo(String empNo, Date startTime, Date endTime);

}